﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DAL
{
public partial    class OrdenVentaFormato
    {
    public  void addSet(dbGestionDataContext  _db,
                    int idConcepto,
                    string numDocumento,
                    decimal total, 
                    int idMoneda,   
                    int idOrdenVentaItem,
                    int? idTipoUI,
                    int? idFinanciamientoDes,
                    DateTime fechaVencimiento )
    {

        this.idConcepto=idConcepto;
        this.total=total;
        this.idMoneda=idMoneda;
        this.idOrdenVentaItem=idOrdenVentaItem;
        this.idTipoUI=idTipoUI;
        this.numDocumento=numDocumento;
        this.fechaVencimiento=fechaVencimiento;
        this.totalPago=0;
        this.totalFin = 0;
        this.idFinanciamientoDes = idFinanciamientoDes;

        _db.OrdenVentaFormatos.InsertOnSubmit(this);

    }

    public void UpdateTotalPago(decimal totalPagado)
    {
        this.totalPago = totalPagado;
    }
    public void UpdateTotalFin(decimal totalfinanciado)
    {
        this.totalFin = totalfinanciado;
    }
    public void UpdateFacturado(int idDocumentoVenta)
    {
        this.bitFacturado= true;
        this.idDocumentoVenta = idDocumentoVenta;
    }
    public void DeleteFacturado()
    {
        this.bitFacturado = false;
        this.idDocumentoVenta = null;
    }

    public string GetCorrelativo(string finanNum,ConceptoItem concepto)
    {

        return finanNum + concepto.codigo;
    }



    public void UpdateSet()
    {


    }


     public decimal GetTotalPago()
        {
            decimal total=0;
        // decimal totalFinanciado=(this._idFinaciamientoOrig!=null)?this.Financiamiento.total:0;
         decimal totalPago = this.RendicionVentaItems.Sum(p => p.total);
         total =  totalPago;
            
            return total;
        }

     public decimal GetTotalFinanciado()
     {
         decimal total = 0;
         // decimal totalFinanciado=(this._idFinaciamientoOrig!=null)?this.Financiamiento.total:0;
         decimal totalPago = this.FinanciamientoItems.Sum(p => p.total);
         total = totalPago;

         return total;
     }
}
}